"""
题目内容：
1. 一个回合制游戏，有两个英雄，分别以两个类进行定义。分别是Timo和Jinx。
   每个英雄都有 hp 属性和 power属性，hp 代表血量，power 代表攻击力
2. 每个英雄都有一个 fight 方法， fight 方法需要传⼊“enemy_hp”（敌方的血量），
  “enemy_power”（敌方的攻击力）两个参数。需要计算对打一轮过后双方的最终血量，
   英雄最终的血量 = 英雄的hp属性 - 敌方的攻击力enemy_power
   敌方最终的血量 = 敌方的血量enemy_hp - 英雄的power属性
3. 对方英雄最终的血量和敌方最终的血量，血量剩余多的一方获胜。如果英雄赢了打印
  “英雄获胜”，如果敌方赢了，打印“敌方获胜”
4. 使用继承、简单工厂方法等各种方式优化你的代码
"""

class Hero:
    #定义类属性
    hero_hp=""
    hero_power=""
    hero_name=""

    def fight(self,enemy_hp,enemy_power,enemy_name):
        """
        :param enemy_hp: 敌方的血量
        :param enemy_power: 敌方的攻击力
        :return:
        """
        hero_final_hp = self.hero_hp - enemy_power
        enemy_final_hp=enemy_hp - self.hero_power
        #对比两方血量
        if hero_final_hp>enemy_final_hp:
            print(f"{self.hero_name}获胜")
        elif enemy_final_hp>hero_final_hp:
            print(f"{enemy_name}获胜")
        else:
            print("平局")

class Timo(Hero):
    hero_hp=1100
    hero_power=200
    hero_name="timo"

class Jinx(Hero):
    hero_hp=1300
    hero_power=190
    hero_name="jinx"

if __name__=="__main__":
    timo=Timo()
    jinx = Jinx()
    jinx.fight(Timo.hero_hp,Timo.hero_power,Timo.hero_name)
